package 数据结构和算法基础计划9月开始的;
// https://leetcode-cn.com/problems/single-number/
public class 数组136只出现一次的数字0829 {
    class Solution {
        public int singleNumber(int[] nums) {
            int single = 0;
            for (int num : nums) {
                single ^= num;
            }
            return single;
        }
    }

// class Solution {
//     public int singleNumber(int[] nums) {
//         Map<Integer, Integer> map = new HashMap<>();
//         for (Integer i : nums) {
//             Integer count = map.get(i);
//             count = count == null ? 1 : ++count;
//             map.put(i, count);
//         }
//         for (Integer i : map.keySet()) {
//             Integer count = map.get(i);
//             if (count == 1) {
//                 return i;
//             }
//         }
//         return -1; // can't find it.
//     }
// }

/*
    List<Integer> list = new ArrayList<>();
        for (int i = 0; i < nums.length; i++) {
            if (!list.contains(nums[i])){
                list.add(nums[i]);
            }else {
                list.remove((Integer) nums[i]);
            }

        }
        return list.get(0);


*/
}
